<template>
  <view class="userLayout pageBg" v-if="userInfo">

    <view :style="{height: navBarHeight()+'px'}"></view>
    <view class="userInfo">
      <view class="avatar">
        <image src="../../static/images/xxmLogo.png" mode="aspectFill"></image>
      </view>
      <view class="ip">
        {{userInfo.IP}}
      </view>
      <view class="address">
        来自于：{{userInfo.address.city||userInfo.address.province||userInfo.address.country}}
      </view>
    </view>

    <view class="section">
      <view class="list">
        <navigator url="/pages/classlist/classlist?name=我的下载&type=download">
          <view class="row">
            <view class="left">
              <uni-icons type="download-filled" size="20"></uni-icons>
              <view class="text">我的下载</view>
            </view>
            <view class="right">
              <view class="text">{{userInfo.downloadSize}}</view>
              <uni-icons type="right" color="#aaa" size="15"></uni-icons>
            </view>
          </view>
        </navigator>
        <navigator url="/pages/classlist/classlist?name=我的评分&type=score">
          <view class="row">
            <view class="left">
              <uni-icons type="star-filled" size="20"></uni-icons>
              <view class="text">我的评分</view>
            </view>
            <view class="right">
              <view class="text">{{userInfo.scoreSize}}</view>
              <uni-icons type="right" color="#aaa" size="15"></uni-icons>
            </view>
          </view>
        </navigator>

        <view class="row">
          <view class="left">
            <uni-icons type="chatboxes-filled" size="20"></uni-icons>
            <view class="text">联系客服</view>
          </view>
          <view class="right">
            <view class="text"></view>
            <uni-icons type="right" color="#aaa" size="15"></uni-icons>
          </view>
        </view>
      </view>
    </view>

    <view class="section">
      <view class="list">
        <view class="row">
          <view class="left">
            <uni-icons type="notification-filled" size="20"></uni-icons>
            <view class="text">订阅更新</view>
          </view>
          <view class="right">
            <view class="text"></view>
            <uni-icons type="right" color="#aaa" size="15"></uni-icons>
          </view>
        </view>
        <view class="row">
          <view class="left">
            <uni-icons type="flag-filled" size="20"></uni-icons>
            <view class="text">常见问题</view>
          </view>
          <view class="right">
            <view class="text"></view>
            <uni-icons type="right" color="#aaa" size="15"></uni-icons>
          </view>
        </view>
        <!-- #ifdef MP -->
        <button open-type="contact">联系客服</button>
        <!-- #endif -->
        <!-- #ifndef MP -->
        <button @click="clickContact">拨打电话</button>
        <!-- #endif -->
      </view>
    </view>
  </view>

  <view class="loadingLayout" v-else>
    <uni-load-more status="loading"></uni-load-more>
  </view>
</template>

<script setup>
  import {
    navBarHeight
  } from '@/utils/system.js'
  import {
    apiGetUserInfo
  } from '@/api/api.js'
  import {
    ref
  } from 'vue'
  const userInfo = ref(null)
  const clickContact = () => {
    uni.makePhoneCall({
      phoneNumber: '10086'
    })
  }
  const getUserInfo = async () => {
    let res = await apiGetUserInfo()
    userInfo.value = res.data
  }
  getUserInfo()
</script>

<style lang="scss" scoped>
  .userLayout {
    .userInfo {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 50rpx 0;

      .avatar {
        width: 160rpx;
        height: 160rpx;
        border-radius: 50%;
        overflow: hidden;

        image {
          width: 100%;
          height: 100%;
        }
      }

      .ip {
        padding: 20rpx 0 5rpx;
        font-size: 44rpx;
        color: #333;
      }

      .address {
        font-size: 28rpx;
        color: #aaa;
      }
    }

    .section {
      width: 690rpx;
      margin: 50rpx auto;
      border-radius: 10rpx;
      box-shadow: 0 0 30rpx rgba(0, 0, 0, .05);

      .list {
        padding: 0 30rpx;
        position: relative;
        background: #fff;

        .row {
          display: flex;
          align-items: center;
          justify-content: space-between;
          height: 100rpx;
          border-bottom: 1px solid #eee;

          &:last-child {
            border-bottom: none;
          }

          .left {
            display: flex;
            align-items: center;

            :deep(.uni-icons) {
              color: $brand-theme-color !important;
            }

            .text {
              margin-left: 20rpx;
              font-size: 32rpx;
              color: #aaa;
            }
          }

          .right {
            display: flex;
            align-items: center;

            .text {
              margin-right: 20rpx;
              font-size: 32rpx;
              color: #aaa;
            }
          }
        }

        button {
          position: absolute;
          left: 0;
          top: -150rpx;
          width: 100%;
          height: 100rpx;
          opacity: 0;
        }
      }
    }
  }
</style>